// This File is part of the "nyaqt" Project
// 
// Copyright  2009 sometmes@gmail.com
// All rights reserved
// 
// This library is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published
// by the Free Software Foundation; either version 2.1 of the License, or
// (at your option) any later version.
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace SmAddin.IU
{
    public partial class Settings : Form
    {
        Commands.DiffCommand diff = null;

        EnvDTE80.DTE2 _dte;
        public EnvDTE80.DTE2 DTE
        {
            get { return _dte; }
            set { _dte = value; }
        }

        internal Commands.DiffCommand Diff
        {
            get { return diff; }
            set { diff = value; }
        }

        public Settings()
        {
            InitializeComponent();
        }

        private void Settings_Load(object sender, EventArgs e)
        {
            bindingSourceTwoFiles1.DataSource = Diff;
            bindingSourceTwoFiles2.DataSource = Diff;
            bindingSourceThreeFiles1.DataSource = Diff;
            bindingSourceThreeFiles2.DataSource = Diff;

            comboBoxTwoFiles.SelectedItem = Diff.SelectedTwoDiffTool;
            comboBoxTwoFilesAlternative.SelectedItem = Diff.AlternateTwoDiffTool;
            comboBoxThreeFiles.SelectedItem = Diff.SelectedThreeDiffTool;
            comboBoxThreFilesAlternative.SelectedItem = Diff.AlternateThreeDiffTool;
        }

        private void buttonOk_Click(object sender, EventArgs e)
        {
            Diff.SelectedTwoDiffTool = comboBoxTwoFiles.SelectedItem as Commands.DiffTool;
            Diff.AlternateTwoDiffTool = comboBoxTwoFilesAlternative.SelectedItem as Commands.DiffTool;
            Diff.SelectedThreeDiffTool = comboBoxThreeFiles.SelectedItem as Commands.DiffTool;
            Diff.AlternateThreeDiffTool = comboBoxThreFilesAlternative.SelectedItem as Commands.DiffTool;
        }

        private void resetInstanceButton_Click(object sender, EventArgs e)
        {
            Commands.OpenApartCommand.ResetSharedInstance(this.DTE);
        }
    }
}
